package org.easy.db;

import java.util.List;
import java.util.Map;

/**
 * 数据库操作类型
 * @author wuxueli
 */
public interface IDataBaseOperation {

    /**
     * 根据数据库名称查找所有的表
     * @param dbName 数据库名
     * @return List<String>
     */
    Map<String,List<String>> queryTableNamesByDbName(String dbName);

    /**
     * 创建表结构
     * @param sql 表结构语句
     * @return boolean
     */
    boolean createTable(String sql);

    /**
     * 查询
     * @param sql 查询语句
     * @return List<Map<String, Object>>
     */
    List<Map<String, Object>> query(String sql);

    /**
     * 更新
     * @param sql 更新语句
     * @return int
     */
    int update(String sql);

    /**
     * 删除
     * @param sql 删除语句
     * @return int
     */
    int delete(String sql);

    /**
     * alter
     * @param sql alter语句
     */
    void alter(String sql);

    /**
     * create
     * @param sql alter语句
     */
    void create(String sql);

}
